﻿using OConf.Model;
using OConf.Model.Common;
using OConf.Model.RequestInput.ConfigInfo;
using System.Collections.Generic;

namespace OConf.IBLL
{
    public interface IConfigInfoBLL
    {
        /// <summary>
        /// 新增配置信息
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        ReturnData<bool> AddConfigInfo(AddConfigInfoInput input);
        /// <summary>
        /// 编辑配置信息
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        ReturnData<bool> EditConfigInfo(EditConfigInfoInput input);

        /// <summary>
        /// 删除配置信息
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        ReturnData<bool> DeleteConfigInfo(DeleteConfigInfoInput input);

        /// <summary>
        /// 还原配置信息
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        ReturnData<bool> RestoreConfigInfo(RestoreConfigInfoInput input);

        // <summary>
        /// 根据NameSpaceID获取配置信息
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        ReturnData<List<ConfigInfoModel>> GetConfigInfoByNameSpaceID(GetConfigInfoListInput input);

        /// <summary>
        /// 获取配置文件信息
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        ReturnData<List<ConfigFileInfo>> GetConfigFileInfo(GetConfigFileInfoInput input);

     
    }
}
